eric programming leetcode 259